//快捷键模块
angular.module('baisonShortCut', [])
        //获取全部支付方式
        .factory('shortCutAction', ['$route', function ($route) {
                //全部已经注册的快捷键，避免重复注册事件, 同时需要注册到不同的控制器上
                var shortCuts = {}; 
                
                var handler = function (controller, shortcut, callback) {
                    //console.log(shortCuts);
                    //非PC版本不处理快捷键
                    if (!isPC) {
                        return;
                    }
                    //该控制器已经注册过此按键事件
                    //console.log(shortCuts[controller+shortcut]);
                    if(shortCuts.hasOwnProperty(controller+shortcut) == true){
                        ipcRenderer.removeListener('global-shortcut', shortCuts[controller+shortcut]);
                    }
                    shortCuts[controller+shortcut] = function (event, message) {
                        if (shortcut == message && ($route.current.$$route.originalPath == controller || controller=='' )) {
                            callback();
                        }
                        return;
                    };
                    
                    ipcRenderer.on('global-shortcut', shortCuts[controller+shortcut]);
                };
                return {
                    handler: handler
                };
            }
        ]);